diff --git a/system/drivers/DB_active_record.php b/system/drivers/DB_active_record.php
index c7e4f09..af12d9d 100644
--- a/system/drivers/DB_active_record.php
+++ b/system/drivers/DB_active_record.php
@@ -390,7 +390,7 @@
 	{
 		if (trim($direction) != '')
 		{
-			$direction = (in_array(strtoupper(trim($direction)), array('ASC', 'DESC'))) ? ' '.$direction : ' ASC';
+			$direction = (in_array(strtoupper(trim($direction)), array('ASC', 'DESC', 'RAND()'))) ? ' '.$direction : ' ASC';
 		}
 		
 		$this->ar_orderby[] = $orderby.$direction;
diff --git a/system/helpers/cookie_helper.php b/system/helpers/cookie_helper.php
index 24e243d..fc5920f 100644
--- a/system/helpers/cookie_helper.php
+++ b/system/helpers/cookie_helper.php
@@ -55,6 +55,22 @@
 		}
 	}
 	
+	// Set the config file options
+	$obj =& get_instance();
+	
+	if ($prefix == '' AND $obj->config->item('cookie_prefix') != '')
+	{
+		$obj->config->item('cookie_prefix');
+	}
+	if ($domain == '' AND $obj->config->item('cookie_domain') != '')
+	{
+		$obj->config->item('cookie_domain');
+	}
+	if ($prefix == '/' AND $obj->config->item('cookie_path') != '/')
+	{
+		$obj->config->item('cookie_path');
+	}
+		
 	if ( ! is_numeric($expire))
 	{
 		$expire = time() - 86500;
@@ -73,5 +89,38 @@
 	
 	setcookie($prefix.$name, $value, $expire, $path, $domain, 0);
 }
+	
+// --------------------------------------------------------------------
+
+/**
+ * Fetch an item from the COOKIE array
+ *
+ * @access	public
+ * @param	string
+ * @param	bool
+ * @return	mixed
+ */
+function get_cookie($index = '', $xss_clean = FALSE)
+{
+	$obj =& get_instance();
+	return $obj->input->cookie($index, $xss_clean);
+}
+
+// --------------------------------------------------------------------
+
+/**
+ * Delete a COOKIE
+ *
+ * @param	mixed
+ * @param	string	the cookie domain.  Usually:  .yourdomain.com
+ * @param	string	the cookie path
+ * @param	string	the cookie prefix
+ * @return	void
+ */
+function delete_cookie($name = '', $domain = '', $path = '/', $prefix = '')
+{
+	set_cookie($name, '', '', $domain, $path, $prefix);
+}
+
 
 ?>
\ No newline at end of file
diff --git a/system/libraries/Validation.php b/system/libraries/Validation.php
index 065e7a2..f9b51d7 100644
--- a/system/libraries/Validation.php
+++ b/system/libraries/Validation.php
@@ -524,7 +524,7 @@
 	 */	
 	function numeric($str)
 	{
-		return ( ! is_numeric($str)) ? FALSE : TRUE;
+		return ( ! ereg("^[0-9]+$", $str)) ? FALSE : TRUE;
 	}
 	
 	// --------------------------------------------------------------------
